package com.sw.funfuck.common.vo;

import io.swagger.annotations.ApiModelProperty;

import javax.validation.constraints.NotEmpty;
import java.util.Date;

/**
 * log bean
 *
 * @author lichangwen
 **/
public class ReqLogInfo {
    /**
     * 模块编码
     */
    @NotEmpty(message = "模块编码不能为空")
    @ApiModelProperty(name = "resourceName", value = "模块编码(必填)", required = true)
    private String resourceName;

    /**
     * 操作编码
     */
    @NotEmpty(message = "操作编码不能为空")
    @ApiModelProperty(name = "operaName", value = "操作编码(必填)", required = true)
    private String operaName;

    /**
     * 操作详情
     */
    @ApiModelProperty(name = "description", value = "操作详情(可选)", required = false)
    private String description;

    /**
     * ip地址
     */
    @ApiModelProperty(name = "ip", value = "ip地址(可选)", required = false)
    private String ip;

    /**
     * 用户ID
     */
    @ApiModelProperty(name = "userIdID", value = "用户ID(可选)", required = false)
    private long userId;
    /**
     * 部门ID
     */
    @ApiModelProperty(name = "orgId", value = "用户ID(可选)", required = false)
    private long orgId;

    /**
     * 用户名
     */
    @ApiModelProperty(name = "username", value = "用户名(可选)", required = false)
    private String username;

    //组织ID
    @ApiModelProperty(name = "organId", value = "组织ID(可选)", required = false)
    private Long organId;

    /**
     * 组织名称
     */
    @ApiModelProperty(name = "organName", value = "组织名称(可选)", required = false)
    private String organName;


    /**
     * 用户名
     */
    @ApiModelProperty(name = "realName", value = "真实姓名(可选)", required = false)
    private String realName;

    @ApiModelProperty(name = "startTime", value = "开始时间，格式为：yyyy-MM-dd HH:mm:ss(可选)", required = false)
    private Date startTime;


    @ApiModelProperty(name = "endTime", value = "结束时间，格式为：yyyy-MM-dd HH:mm:ss(可选)", required = false)
    private Date endTime;


    @ApiModelProperty(name = "result", value = "执行结果，Y表示成功，N表示失败", required = false)
    private String result;

    //备注
    @ApiModelProperty(name = "remark", value = "备注", required = false)
    private String remark;

    @ApiModelProperty(name = "type", value = "操作标识", required = false)
    private int type;


    @ApiModelProperty(name = "resourceId", value = "资源ID", required = false)
    private int resourceId;


    public ReqLogInfo() {

    }

    public ReqLogInfo(Long userId, String username, String realName, Long organId, String organName, int type, int resourceId,
                      String resourceName, String operaName, Date startTime, String description, String remark, String ip) {
        this.userId = userId;
        this.username = username;
        this.realName = realName;
        this.organId = organId;
        this.organName = organName;
        this.type = type;
        this.resourceId = resourceId;
        this.resourceName = resourceName;
        this.operaName = operaName;
        this.startTime = startTime;
        this.description = description;
        this.remark = remark;
        this.ip = ip;
    }


    public String getResourceName() {
        return resourceName;
    }

    public void setResourceName(String resourceName) {
        this.resourceName = resourceName;
    }

    public String getOperaName() {
        return operaName;
    }

    public void setOperaName(String operaName) {
        this.operaName = operaName;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getIp() {
        return ip;
    }

    public void setIp(String ip) {
        this.ip = ip;
    }

    public long getUserId() {
        return userId;
    }

    public void setUserId(long userId) {
        this.userId = userId;
    }

    public long getOrgId() {
        return orgId;
    }

    public void setOrgId(long orgId) {
        this.orgId = orgId;
    }

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public Long getOrganId() {
        return organId;
    }

    public void setOrganId(Long organId) {
        this.organId = organId;
    }

    public String getOrganName() {
        return organName;
    }

    public void setOrganName(String organName) {
        this.organName = organName;
    }


    public String getRealName() {
        return realName;
    }

    public void setRealName(String realName) {
        this.realName = realName;
    }

    public Date getStartTime() {
        return startTime;
    }


    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }


    public Date getEndTime() {
        return endTime;
    }


    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }


    public int getType() {
        return type;
    }


    public void setType(int type) {
        this.type = type;
    }


    public int getResourceId() {
        return resourceId;
    }


    public void setResourceId(int resourceId) {
        this.resourceId = resourceId;
    }


    public String getResult() {
        return result;
    }

    public void setResult(String result) {
        this.result = result;
    }

    public String getRemark() {
        return remark;
    }

    public void setRemark(String remark) {
        this.remark = remark;
    }

}
